home *** CD-ROM | disk | FTP | other *** search
/ Cisco Networkers 1998 / Cisco Networkers 1998.iso / pc / talks / nwk06a / nwk06a.eml < prev    next >
Encoding:
Text File  |  1998-04-21  |  72.0 KB  |  1,102 lines

  1. <HTML>
  2. <HEAD>
  3. </HEAD>
  4. <BODY>
  5. <!-- Generated by EloEdit v3.0.0.29 on Tuesday, April 07, 1998 06:33 PM -->
  6. <!-- File: C:\WINDOWS\DESKTOP\CHRIST~1\NWK06A\NWK06A.EML -->
  7. <!--$v=0000000 (0001)-->Hi, I'm Chris Lonvick. Welcome to 
  8. <!--$v=0003481 (0002)-->Designing Secure Enterprise Network Infrastructures. 
  9. <!--$v=0007053 (0003)-->What I'd like to do here 
  10. <!--$v=0010122 (0004)-->is get you all started thinking not 
  11. <!--$v=0012596 (0005)-->so much about network security or network infrastructures, 
  12. <!--$v=0015985 (0006)-->but let's take a bit of an analogy and think about 
  13. <!--$v=0019329 (0007)-->that and see if we can't get our hands around the whole problem here. 
  14. <!--$v=0022765 (0008)-->What I've got is a picture of the USS Constitution. 
  15. <!--$v=0026154 (0009)-->It has tons of cannons all over it. It has 
  16. <!--$v=0029498 (0010)-->guns. The Marines are stationed on the thing. 
  17. <!--$v=0032658 (0011)-->We've got - oh, the sailors with the neat little swords and all sorts of 
  18. <!--$v=0036140 (0012)-->things there. If you're the captain of this, 
  19. <!--$v=0038796 (0013)-->what possibly could be your 
  20. <!--$v=0041316 (0014)-->security concerns for this? 
  21. <!--$v=0043835 (0015)-->Obviously not much. Well, what about 
  22. <!--$v=0047408 (0016)-->drinking water? What about food? 
  23. <!--$v=0049790 (0017)-->All of these things are also essential 
  24. <!--$v=0053133 (0018)-->for you to be able to accomplish your mission, 
  25. <!--$v=0055836 (0019)-->whatever that might be. If you run out of any of these things, 
  26. <!--$v=0059134 (0020)-->of course you're going to have to put back into port and replenish those 
  27. <!--$v=0062386 (0021)-->supplies before you can go out and accomplish your mission. 
  28. <!--$v=0065638 (0022)-->So you could have a failure just 
  29. <!--$v=0068157 (0023)-->because of these simple little things. 
  30. <!--$v=0071547 (0024)-->The paramount thing to have 
  31. <!--$v=0074020 (0025)-->is a written policy. We've discussed 
  32. <!--$v=0076998 (0026)-->that in many other Networkers' presentations 
  33. <!--$v=0079609 (0027)-->and you can find this also anywhere else you look about 
  34. <!--$v=0082632 (0028)-->network security. First have a 
  35. <!--$v=0085517 (0029)-->policy, a written-down policy. We've also got 
  36. <!--$v=0089090 (0030)-->three elements that are very well identified 
  37. <!--$v=0092342 (0031)-->and you'll see these also in several other Networkers' 
  38. <!--$v=0095228 (0032)-->presentations: the identity, 
  39. <!--$v=0097931 (0033)-->the integrity, and the audit functions here. 
  40. <!--$v=0101229 (0034)-->I'm not going to go through these in this 
  41. <!--$v=0103839 (0035)-->presentation. But what I want to do is show you 
  42. <!--$v=0107046 (0036)-->how to go through and apply these things 
  43. <!--$v=0109519 (0037)-->to your policies or your procedures 
  44. <!--$v=0112359 (0038)-->and operations. I've identified 
  45. <!--$v=0114741 (0039)-->four areas here that we really need to 
  46. <!--$v=0117443 (0040)-->spend some time with, or you need to spend some time with 
  47. <!--$v=0120512 (0041)-->to make sure you have a secure network. 
  48. <!--$v=0123902 (0042)-->First one is training. This is all the way from 
  49. <!--$v=0127108 (0043)-->the captain all the way down to the lowest 
  50. <!--$v=0129765 (0044)-->deck swabbie there. You continually need to be trained 
  51. <!--$v=0133200 (0045)-->in new areas or to make sure you're 
  52. <!--$v=0136453 (0046)-->up to date with what's going on in 
  53. <!--$v=0139155 (0047)-->the current technologies. The rules - 
  54. <!--$v=0142224 (0048)-->again, they must be applied to everyone 
  55. <!--$v=0145522 (0049)-->and they really need to go - 
  56. <!--$v=0149003 (0050)-->they need to be agreed upon by everyone 
  57. <!--$v=0151751 (0051)-->on the whole ship or in your whole network 
  58. <!--$v=0154271 (0052)-->in order to be effective. Periodic review 
  59. <!--$v=0157706 (0053)-->of your procedures and operations 
  60. <!--$v=0160821 (0054)-->is also critical. People need to come back and 
  61. <!--$v=0163340 (0055)-->take a look and make sure that you're meeting 
  62. <!--$v=0165768 (0056)-->your business objectives. 
  63. <!--$v=0168562 (0057)-->Delegation of authority - of course the captain is 
  64. <!--$v=0171951 (0058)-->fully responsible for everything that goes on 
  65. <!--$v=0174608 (0059)-->on the ship there, but 
  66. <!--$v=0176990 (0060)-->the captain can't be awake and he can't be 
  67. <!--$v=0179555 (0061)-->everywhere at all times. He's got to rely upon 
  68. <!--$v=0183036 (0062)-->officers, the officers have got to rely upon the men under them 
  69. <!--$v=0186426 (0063)-->to make sure that all the procedures or the 
  70. <!--$v=0189449 (0064)-->policies are being met at all times. 
  71. <!--$v=0192976 (0065)-->What we're going to go 
  72. <!--$v=0195633 (0066)-->through here in this session - I want you all to think about 
  73. <!--$v=0198839 (0067)-->this a little bit, or this is what I want you to think about 
  74. <!--$v=0201679 (0068)-->during this session - defining 
  75. <!--$v=0204839 (0069)-->what to protect. 
  76. <!--$v=0207267 (0070)-->Essentially it's going to be anything that could 
  77. <!--$v=0209878 (0071)-->cause problems if you were to lose it 
  78. <!--$v=0212855 (0072)-->or if it were to become corrupted, 
  79. <!--$v=0215375 (0073)-->or to malfunction, 
  80. <!--$v=0218214 (0074)-->and decide how to protect it. 
  81. <!--$v=0220596 (0075)-->There's various ways, and you can think about what is 
  82. <!--$v=0224078 (0076)-->good enough to meet your business needs 
  83. <!--$v=0226551 (0077)-->versus what is the absolute protection 
  84. <!--$v=0229253 (0078)-->of that resource or device. 
  85. <!--$v=0231864 (0079)-->One other thing - think about the cost 
  86. <!--$v=0234429 (0080)-->of the protection versus the cost 
  87. <!--$v=0236903 (0081)-->of the loss or corruption of that resource. 
  88. <!--$v=0240247 (0082)-->The analogy I like to use with this one is a newspaper. 
  89. <!--$v=0243728 (0083)-->You're probably paying 
  90. <!--$v=0246293 (0084)-->25, 50 cents for home delivery 
  91. <!--$v=0249270 (0085)-->of that newspaper. 
  92. <!--$v=0251835 (0086)-->If it doesn't come some day, what's going to happen? You're going to be 
  93. <!--$v=0255179 (0087)-->out that amount of money. You can go buy one or 
  94. <!--$v=0257653 (0088)-->you can call up and complain and they'll deliver another one later on. 
  95. <!--$v=0260721 (0089)-->It's just not quite the same if it doesn't get there first thing in the morning. 
  96. <!--$v=0264248 (0090)-->What if someone actually came through 
  97. <!--$v=0266951 (0091)-->and maliciously replaced your newspaper 
  98. <!--$v=0269974 (0092)-->with one that they had printed up? Let's say it had 
  99. <!--$v=0272768 (0093)-->the title on it of Cisco's stock 
  100. <!--$v=0275379 (0094)-->selling at $800 per share. We hope that happens next week, 
  101. <!--$v=0278585 (0095)-->by the way, but what if the 
  102. <!--$v=0281288 (0096)-->attacker could predict your reaction 
  103. <!--$v=0284219 (0097)-->to reading that headline? 
  104. <!--$v=0286601 (0098)-->You might go out and do something, in which case 
  105. <!--$v=0289258 (0099)-->the attacker could take advantage of that and 
  106. <!--$v=0292281 (0100)-->his attack could succeed no matter what that could be. 
  107. <!--$v=0295442 (0101)-->
  108. <!--$v=0297824 (0102)-->We've gone through the introduction here. 
  109. <!--$v=0300709 (0103)-->What we're going to get into next is 
  110. <!--$v=0303320 (0104)-->thinking about the router or the switch 
  111. <!--$v=0306160 (0105)-->self-protection. We're going to start small here and work our way 
  112. <!--$v=0309321 (0106)-->progressively outward throughout this talk. 
  113. <!--$v=0312252 (0107)-->The next - beyond that is resource 
  114. <!--$v=0315184 (0108)-->protection, thinking about how to protect 
  115. <!--$v=0317657 (0109)-->individual resources throughout your enterprise. 
  116. <!--$v=0320909 (0110)-->Moving beyond that we're going to talk about the entire 
  117. <!--$v=0323795 (0111)-->perimeter of your network. 
  118. <!--$v=0326177 (0112)-->Then we're going to come back and take a look at the whole thing at a plane above it, 
  119. <!--$v=0329750 (0113)-->thinking about how to sustain 
  120. <!--$v=0332452 (0114)-->that network security. 
  121. <!--$v=0334834 (0115)-->Come back after that and talk about how to validate 
  122. <!--$v=0337536 (0116)-->that you actually are sustaining your network 
  123. <!--$v=0340239 (0117)-->security there as well, and we'll wrap the whole 
  124. <!--$v=0342667 (0118)-->thing up with some conclusions in the final section. 
  125. <!--$v=0345369 (0119)-->Let's go ahead and get into this a little bit - 
  126. <!--$v=0348530 (0120)-->The Router/Switch Self-Protection. 
  127. <!--$v=0351507 (0121)-->I had originally wanted the graphics artist 
  128. <!--$v=0354713 (0122)-->people to get that - the Zena, 
  129. <!--$v=0357233 (0123)-->the Warrior Princess thing with the swords up there and, 
  130. <!--$v=0360485 (0124)-->you know, I looked around for that one on the Internet as well and 
  131. <!--$v=0363645 (0125)-->found out that all those photos were copyrighted. 
  132. <!--$v=0366485 (0126)-->Got to respect that and actually 
  133. <!--$v=0368867 (0127)-->I asked around and found out, no, we're not planning to buy that company anytime 
  134. <!--$v=0371753 (0128)-->soon, so I'm stuck with the sword and the hatchet 
  135. <!--$v=0375280 (0129)-->thing there. Let's talk about first, 
  136. <!--$v=0378807 (0130)-->the intruder attack points. 
  137. <!--$v=0381738 (0131)-->Of course any burglar is going to know 
  138. <!--$v=0384624 (0132)-->where the security weaknesses 
  139. <!--$v=0387235 (0133)-->of your house could be if they target your house 
  140. <!--$v=0390487 (0134)-->to get into. Of course they're going to try the front door. 
  141. <!--$v=0393602 (0135)-->They're going to go around and try the back door. They're going to try 
  142. <!--$v=0396487 (0136)-->possibly some windows or any other point 
  143. <!--$v=0399877 (0137)-->that could potentially let them into 
  144. <!--$v=0402625 (0138)-->your house. There are some well-known 
  145. <!--$v=0406107 (0139)-->attack points with the routers as well. 
  146. <!--$v=0408855 (0140)-->We're going to go through these things one at a time, 
  147. <!--$v=0411649 (0141)-->step through them so you can see how to 
  148. <!--$v=0414122 (0142)-->barricade each of these attack points. 
  149. <!--$v=0416642 (0143)-->First off let's talk 
  150. <!--$v=0419619 (0144)-->about the administrative interface. This is essentially the 
  151. <!--$v=0422871 (0145)-->front door. We're going to talk about the password 
  152. <!--$v=0425528 (0146)-->protection and password encryption. 
  153. <!--$v=0427910 (0147)-->First thing, the banners. No, this is not 
  154. <!--$v=0430750 (0148)-->the banners you wave around. These are the login 
  155. <!--$v=0433910 (0149)-->banners, what gets displayed when you log into 
  156. <!--$v=0436842 (0150)-->the router. Think about these, 
  157. <!--$v=0440094 (0151)-->spend some time with it. There is an RFC, 
  158. <!--$v=0443575 (0152)-->I think it's 2096, that talks about the site 
  159. <!--$v=0447148 (0153)-->security handbook. In this it goes 
  160. <!--$v=0449896 (0154)-->through and tells you what is an appropriate login 
  161. <!--$v=0452965 (0155)-->banner on your network devices. 
  162. <!--$v=0455668 (0156)-->There's a lot of legal discussions about these things. 
  163. <!--$v=0459240 (0157)-->Please don't use the word "Welcome." 
  164. <!--$v=0461622 (0158)-->This is defined in that RFC. 
  165. <!--$v=0465058 (0159)-->Let's talk about the native 
  166. <!--$v=0467668 (0160)-->passwords on the routers here. 
  167. <!--$v=0470463 (0161)-->As you see here, the configuration snip, 
  168. <!--$v=0473669 (0162)-->we've got line console 0. The next 
  169. <!--$v=0477013 (0163)-->command or the next configuration command 
  170. <!--$v=0480265 (0164)-->is login. What we're saying here is that the - 
  171. <!--$v=0483838 (0165)-->if you access the console port 
  172. <!--$v=0486632 (0166)-->you must authenticate. Without that line there, 
  173. <!--$v=0490204 (0167)-->anyone coming up and pressing the enter will automatically get 
  174. <!--$v=0493457 (0168)-->to the router prompt. This is probably not what you want to 
  175. <!--$v=0496938 (0169)-->happen. Put that login command there. 
  176. <!--$v=0499778 (0170)-->The next line defines the password 
  177. <!--$v=0503259 (0171)-->for that console port. 
  178. <!--$v=0506145 (0172)-->Right after that is the exec-timeout, 
  179. <!--$v=0509122 (0173)-->one minute and 30 seconds. If you 
  180. <!--$v=0512008 (0174)-->apply this to any of the 
  181. <!--$v=0514481 (0175)-->lines or the VTYs, 
  182. <!--$v=0516863 (0176)-->then if you let that session sit there idle 
  183. <!--$v=0520436 (0177)-->for a minute and 30 seconds, the router will automatically 
  184. <!--$v=0523963 (0178)-->time the thing out. This is probably a very good practice to get into. 
  185. <!--$v=0527307 (0179)-->What we see there when the console 
  186. <!--$v=0530467 (0180)-->comes up is someone's pressed the 
  187. <!--$v=0533399 (0181)-->enter key, comes up with 
  188. <!--$v=0536284 (0182)-->user access verification and requires a 
  189. <!--$v=0539307 (0183)-->password. If you type it incorrectly 
  190. <!--$v=0542056 (0184)-->you will get the router prompt. 
  191. <!--$v=0544438 (0185)-->
  192. <!--$v=0546865 (0186)-->We can talk about now the service 
  193. <!--$v=0549980 (0187)-->password-encryption command. This is going to 
  194. <!--$v=0553049 (0188)-->encrypt the 
  195. <!--$v=0555614 (0189)-->password. What you saw before was that that password was 
  196. <!--$v=0559004 (0190)-->in cleartext. What this command does 
  197. <!--$v=0561569 (0191)-->is it takes that cleartext, runs it 
  198. <!--$v=0564225 (0192)-->through an algorithm to flip some bits on it 
  199. <!--$v=0567569 (0193)-->and it comes out and it won't display in cleartext any longer. 
  200. <!--$v=0571004 (0194)-->Now this one is a Cisco proprietary 
  201. <!--$v=0574394 (0195)-->encryption method. It can be reversed 
  202. <!--$v=0577967 (0196)-->so that it can come back to the cleartext password. 
  203. <!--$v=0580944 (0197)-->There's several reasons for that. Let's take a look at 
  204. <!--$v=0584013 (0198)-->how this can work in your network. 
  205. <!--$v=0587082 (0199)-->We've got a before and we've got an after 
  206. <!--$v=0589601 (0200)-->type scenario here. And the first one starts out with 
  207. <!--$v=0592624 (0201)-->hostname Router and the enable password 
  208. <!--$v=0595419 (0202)-->is displayed in cleartext. 
  209. <!--$v=0597846 (0203)-->If we go through and just add 
  210. <!--$v=0600320 (0204)-->service password-encryption command to the configuration, 
  211. <!--$v=0603709 (0205)-->we now look down. The enable password 
  212. <!--$v=0606503 (0206)-->has that 7 appended to it 
  213. <!--$v=0609435 (0207)-->and then a totally different string. 
  214. <!--$v=0612458 (0208)-->Again, logging in using the password 
  215. <!--$v=0615619 (0209)-->one4all will get you into the router, 
  216. <!--$v=0618458 (0210)-->but at least now if someone is looking over your shoulder 
  217. <!--$v=0621940 (0211)-->they won't be able to see what the cleartext 
  218. <!--$v=0624505 (0212)-->password is. It's always a good idea 
  219. <!--$v=0627665 (0213)-->not to let someone you don't trust look over your shoulder. 
  220. <!--$v=0631146 (0214)-->They might be able to memorize this thing or write it down. 
  221. <!--$v=0633986 (0215)-->What could be better than that? 
  222. <!--$v=0637239 (0216)-->The enable secret 5 password. 
  223. <!--$v=0640033 (0217)-->This uses an MD5 hash 
  224. <!--$v=0643514 (0218)-->to take the cleartext password, 
  225. <!--$v=0646262 (0219)-->run it through an encryption algorithm or a hashing algorithm 
  226. <!--$v=0649835 (0220)-->to come out with the signature of that 
  227. <!--$v=0652354 (0221)-->password. This is one way. There's no way you can 
  228. <!--$v=0655927 (0222)-->take that signature and come back to the 
  229. <!--$v=0659317 (0223)-->cleartext password. We use this 
  230. <!--$v=0662202 (0224)-->so that you can be fairly well 
  231. <!--$v=0665729 (0225)-->assured that the password you put in will not be readable 
  232. <!--$v=0669073 (0226)-->by anyone else, even 
  233. <!--$v=0671455 (0227)-->if they can get hold of it. We can 
  234. <!--$v=0674524 (0228)-->use, just like with the password 7, 
  235. <!--$v=0677868 (0229)-->cut that from some other window if you have a 
  236. <!--$v=0681165 (0230)-->multiwindow terminal, and then paste it into the 
  237. <!--$v=0684005 (0231)-->configuration of the router. 
  238. <!--$v=0686708 (0232)-->We'll see how this works in just a couple of minutes, 
  239. <!--$v=0689410 (0233)-->but let's see how this works 
  240. <!--$v=0691884 (0234)-->in an actual configuration here. 
  241. <!--$v=0695044 (0235)-->We start out with hostname Router. This is, again, a 
  242. <!--$v=0697747 (0236)-->before and after scenario, and we have the enable 
  243. <!--$v=0700907 (0237)-->password 1forAll here. If we go through 
  244. <!--$v=0704297 (0238)-->and we have to - in the actual 
  245. <!--$v=0707000 (0239)-->configuration you have to say, "No enable password" 
  246. <!--$v=0709748 (0240)-->and then come back and say, "Enable secret 5," 
  247. <!--$v=0713046 (0241)-->you type in your cleartext password 
  248. <!--$v=0715473 (0242)-->and it will come up with - I'm sorry, you type in 
  249. <!--$v=0718222 (0243)-->enable secret and then your cleartext password, 
  250. <!--$v=0721336 (0244)-->it will appear in the configuration snip 
  251. <!--$v=0724222 (0245)-->like this, an extremely long signature 
  252. <!--$v=0727795 (0246)-->of that password. 
  253. <!--$v=0731001 (0247)-->Okay, a couple of things to think about here. 
  254. <!--$v=0734528 (0248)-->Physical security is always required with 
  255. <!--$v=0737872 (0249)-->this. Someone can 
  256. <!--$v=0740437 (0250)-->take your router away, or if they can access your router 
  257. <!--$v=0743506 (0251)-->they can get into it and they can change 
  258. <!--$v=0746117 (0252)-->the passwords to see - to meet whatever they 
  259. <!--$v=0749094 (0253)-->put in, or they can read the configurations. 
  260. <!--$v=0752575 (0254)-->We've published these methods so that 
  261. <!--$v=0754957 (0255)-->people can get into their routers if the administrator 
  262. <!--$v=0758484 (0256)-->gets hit by a truck or whatever. 
  263. <!--$v=0761049 (0257)-->So, always make sure 
  264. <!--$v=0763660 (0258)-->that you guard your passwords 
  265. <!--$v=0766363 (0259)-->pretty jealously, you lock up your routers. 
  266. <!--$v=0769019 (0260)-->There is a certain type of attack, the 
  267. <!--$v=0772043 (0261)-->replace-the-router attack where someone could actually come in, 
  268. <!--$v=0775615 (0262)-->take your router 
  269. <!--$v=0778776 (0263)-->out, look at the configuration, 
  270. <!--$v=0781662 (0264)-->put it into their own router there, 
  271. <!--$v=0784547 (0265)-->cut that password string, the enable 5 
  272. <!--$v=0788120 (0266)-->password, paste it into the new router 
  273. <!--$v=0791647 (0267)-->after, let's say, they've turned on debugging for something, 
  274. <!--$v=0794716 (0268)-->put that router back in service. 
  275. <!--$v=0797190 (0269)-->The administrators are going to know that that router was down for some time. 
  276. <!--$v=0800762 (0270)-->They'll be able to log back into it using 
  277. <!--$v=0803831 (0271)-->the correct password. They're going to start 
  278. <!--$v=0806351 (0272)-->thinking, "Hey, maybe everything's all right with this," 
  279. <!--$v=0808870 (0273)-->where, in fact, the attacker is now getting 
  280. <!--$v=0811893 (0274)-->debug information. Again, just 
  281. <!--$v=0814366 (0275)-->a word of caution here. Always 
  282. <!--$v=0817298 (0276)-->lock down the routers, make sure the wiring 
  283. <!--$v=0819726 (0277)-->closets are locked so that attackers cannot 
  284. <!--$v=0822886 (0278)-->get physical access to the routers. 
  285. <!--$v=0825314 (0279)-->Also, 
  286. <!--$v=0828795 (0280)-->I'm sure that everyone's gone through this a time or two before. 
  287. <!--$v=0831864 (0281)-->You're sitting there, you're bringing up a new router. 
  288. <!--$v=0834337 (0282)-->What? You've got everything written down 
  289. <!--$v=0837040 (0283)-->perfectly on a piece of paper. You're going through it. You've got 
  290. <!--$v=0840384 (0284)-->addresses, interface, subnet masks, everything else, 
  291. <!--$v=0843911 (0285)-->and then all of a sudden it asks you for the enable password. 
  292. <!--$v=0847025 (0286)-->Your mind locks up. 
  293. <!--$v=0849682 (0287)-->You can't think of anything. What do you do? 
  294. <!--$v=0852430 (0288)-->You type in <i>Cisco </i>or <i>Pancho 
  295. <!--$v=0855866 (0289)--></i>or something else. Of course 
  296. <!--$v=0858293 (0290)-->the attackers are going to try these just as well. 
  297. <!--$v=0861546 (0291)-->Please don't use these passwords. 
  298. <!--$v=0864798 (0292)-->Use something that you sit and think about. It's a well-known fact 
  299. <!--$v=0868004 (0293)-->that Rodin was actually thinking, trying to come up with a 
  300. <!--$v=0871394 (0294)-->good password when he came up with his idea for this 
  301. <!--$v=0874829 (0295)-->sculpture called The Thinker. 
  302. <!--$v=0877623 (0296)-->We've got some authentication mechanisms here. 
  303. <!--$v=0881196 (0297)-->First, what we've talked about in the past 
  304. <!--$v=0884173 (0298)-->has been the local database. 
  305. <!--$v=0886876 (0299)-->This is the passwords that are locally stored 
  306. <!--$v=0889716 (0300)-->on the router. If we take 
  307. <!--$v=0892601 (0301)-->these passwords or the authentication mechanism 
  308. <!--$v=0896082 (0302)-->and shift them out to a central 
  309. <!--$v=0899151 (0303)-->location, we call this a centralized database. 
  310. <!--$v=0902724 (0304)-->This is what Kerberos, TACACS, RADIUS, 
  311. <!--$v=0905793 (0305)-->and the one-time passwords will all use. 
  312. <!--$v=0908679 (0306)-->There are some good reasons to keep 
  313. <!--$v=0911152 (0307)-->localized databases on the routers. 
  314. <!--$v=0913946 (0308)-->There's a lot of other good reasons to move it off to a centralized 
  315. <!--$v=0917015 (0309)-->database. If you have a lot of routers, or 
  316. <!--$v=0920542 (0310)-->perhaps you have a very complex configuration, 
  317. <!--$v=0923565 (0311)-->or you absolutely are required to use one-time passwords, 
  318. <!--$v=0927092 (0312)-->then it's always very good to have a centralized database 
  319. <!--$v=0930574 (0313)-->of your authentication. 
  320. <!--$v=0933001 (0314)-->Let's take a look at this. I'm going to go through some 
  321. <!--$v=0935933 (0315)-->examples here and I'm going to use TACACS+. 
  322. <!--$v=0938910 (0316)-->This is just what I had working for me. All of these 
  323. <!--$v=0941887 (0317)-->configurations will work very well also with RADIUS 
  324. <!--$v=0945414 (0318)-->or Kerberos, and you can get into the one-time passwords as well. 
  325. <!--$v=0948850 (0319)-->What I've got here is an 
  326. <!--$v=0951781 (0320)-->authentication mechanism for IOS, 
  327. <!--$v=0955217 (0321)-->and I'm using IOS Version 11.2. 
  328. <!--$v=0958286 (0322)-->Let's walk through this configuration and make sure that everyone's 
  329. <!--$v=0960988 (0323)-->familiar with this. First thing, we've got that 
  330. <!--$v=0964424 (0324)-->service password-encryption. This is 
  331. <!--$v=0967126 (0325)-->going to, wherever it finds a cleartext 
  332. <!--$v=0970378 (0326)-->password, run it through that encryption type 7 
  333. <!--$v=0973859 (0327)-->so it'll come out not cleartexted any longer. 
  334. <!--$v=0976562 (0328)-->Hostname Router - 
  335. <!--$v=0979356 (0329)-->yeah, my mind was in brain-lock when I came up with this 
  336. <!--$v=0982746 (0330)-->configuration, a aaa new-model. 
  337. <!--$v=0985631 (0331)-->Last year Lowell Grant went through a very good 
  338. <!--$v=0988609 (0332)-->explanation why you need this aaa new-model 
  339. <!--$v=0991678 (0333)-->in order to come up with TACACS+ or use 
  340. <!--$v=0994105 (0334)-->TACACS+ in the IOS. The next three 
  341. <!--$v=0997449 (0335)-->lines are pretty much the meat of this configuration snip, 
  342. <!--$v=0999831 (0336)-->this part: the aaa authentication 
  343. <!--$v=1003083 (0337)-->login billy. What we're doing here, 
  344. <!--$v=1006518 (0338)-->we're defining a list of authentication 
  345. <!--$v=1009587 (0339)-->mechanisms that the router will use 
  346. <!--$v=1012336 (0340)-->and the order that it will try them out in. The first 
  347. <!--$v=1015542 (0341)-->element of this list 
  348. <!--$v=1017924 (0342)-->is TACACS+. 
  349. <!--$v=1020535 (0343)-->If that fails - this is not if it returns a negative 
  350. <!--$v=1024107 (0344)-->response, this is if TACACS+, 
  351. <!--$v=1027268 (0345)-->the TACACS+ server cannot be found, 
  352. <!--$v=1030703 (0346)-->then the router's going to flip on and use 
  353. <!--$v=1033726 (0347)-->the next mechanism, and this is what we call enable. 
  354. <!--$v=1037116 (0348)-->We'll go through exactly where 
  355. <!--$v=1040093 (0349)-->this applies and how it gets used just a few minutes here. 
  356. <!--$v=1042750 (0350)-->The second line there of these three, 
  357. <!--$v=1045407 (0351)-->the aaa authentication 
  358. <!--$v=1048063 (0352)-->login bobby. Okay, this is a different 
  359. <!--$v=1051316 (0353)-->list that we're setting up here. First it's going to, again, try TACACS+. 
  360. <!--$v=1054797 (0354)-->If it cannot establish a session with 
  361. <!--$v=1057637 (0355)-->the TACACS server, then it'll move over to a local 
  362. <!--$v=1061072 (0356)-->database authentication mechanism. 
  363. <!--$v=1063546 (0357)-->The third line is the enable secret 5, 
  364. <!--$v=1067027 (0358)-->and, again, the very, very long string. I cut that out 
  365. <!--$v=1070279 (0359)-->because it just kept on going and going and going. 
  366. <!--$v=1073073 (0360)-->Down at the bottom, the last line of this 
  367. <!--$v=1075959 (0361)-->configuration, username bill, 
  368. <!--$v=1079211 (0362)-->and, again, it's been encrypted with 
  369. <!--$v=1082417 (0363)-->the type 7 and some string out there. 
  370. <!--$v=1084982 (0364)-->I think I used junk there so you can see how 
  371. <!--$v=1088326 (0365)-->that thing gets sort of convoluted as it gets thrown in here. 
  372. <!--$v=1091853 (0366)-->Let's take a look 
  373. <!--$v=1094510 (0367)-->at the rest of the configuration and see how we can apply 
  374. <!--$v=1098082 (0368)-->this. The TACACS-server host 
  375. <!--$v=1100922 (0369)-->10.1.1.2 - I have a very simple network that I'm setting this up 
  376. <!--$v=1104220 (0370)-->in - it's going to define where the TACACS 
  377. <!--$v=1106969 (0371)-->server is, and, of course, you can have multiple of these 
  378. <!--$v=1110129 (0372)-->and then you're going to need to keep these things synchronized across your network. 
  379. <!--$v=1113610 (0373)-->TACACS-server key - this is very 
  380. <!--$v=1117183 (0374)-->specific for TACACS. The - If 
  381. <!--$v=1120435 (0375)-->you put this command in, the session 
  382. <!--$v=1123229 (0376)-->from the router to the TACACS+ server 
  383. <!--$v=1126207 (0377)-->will be encrypted. It's not a very strong encryption 
  384. <!--$v=1129734 (0378)-->method, but at least it'll give a attacker who can 
  385. <!--$v=1133215 (0379)-->capture this some pause. 
  386. <!--$v=1135597 (0380)-->They might or might not be able to decrypt it 
  387. <!--$v=1137979 (0381)-->depending upon how much of a string they get or 
  388. <!--$v=1141185 (0382)-->how far they are able to capture 
  389. <!--$v=1143796 (0383)-->this string throughout. 
  390. <!--$v=1146315 (0384)-->Now we're going down to the last set of lines here 
  391. <!--$v=1149476 (0385)-->and we're going to apply our authentication 
  392. <!--$v=1152636 (0386)-->mechanisms. Let's look at line con 0 here first. 
  393. <!--$v=1156072 (0387)-->We've got login authentication billy. 
  394. <!--$v=1159186 (0388)-->This is the one - oh, we also do 
  395. <!--$v=1161568 (0389)-->this with the line auxiliary 0 here. 
  396. <!--$v=1163996 (0390)-->So both of these things we're applying this - 
  397. <!--$v=1166378 (0391)-->the list billy to 
  398. <!--$v=1168989 (0392)-->the console and the auxiliary lines. 
  399. <!--$v=1171874 (0393)-->Again, first it's going to try 
  400. <!--$v=1174439 (0394)-->to use TACACS+. If it cannot 
  401. <!--$v=1177004 (0395)-->establish a session with the TACACS+ server, 
  402. <!--$v=1179707 (0396)-->it will come back and try - it will prompt 
  403. <!--$v=1183051 (0397)-->the person trying to log in to just enter the 
  404. <!--$v=1186395 (0398)-->enable password. The VTYs 
  405. <!--$v=1189509 (0399)-->are now set up differently. They're going to use that 
  406. <!--$v=1192120 (0400)-->list bobby, which is first. Again, going to try 
  407. <!--$v=1195143 (0401)-->to use TACACS+. If that fails 
  408. <!--$v=1197846 (0402)-->then they're going to try and use that local password, which 
  409. <!--$v=1201052 (0403)-->we defined bill, and the password for that. 
  410. <!--$v=1204258 (0404)-->Where could you apply this? 
  411. <!--$v=1207144 (0405)-->Let's say that you don't want 
  412. <!--$v=1209572 (0406)-->anyone to send the enable password 
  413. <!--$v=1212778 (0407)-->in the clear across the wide area network, 
  414. <!--$v=1215801 (0408)-->but you know that sometimes this router's going to be 
  415. <!--$v=1218458 (0409)-->yanked out of service, all the 
  416. <!--$v=1221298 (0410)-->connections to it are going to be disconnected. 
  417. <!--$v=1223680 (0411)-->So in that case, if the thing is 
  418. <!--$v=1226062 (0412)-->yanked out of service, it will not be able to establish the session to 
  419. <!--$v=1229634 (0413)-->the TACACS+ server. One of the 
  420. <!--$v=1232932 (0414)-->local administrators, one of the 
  421. <!--$v=1235956 (0415)-->delegated people, the people who locally administrate 
  422. <!--$v=1239437 (0416)-->this router, might be able to set up a local area network 
  423. <!--$v=1242826 (0417)-->to it and just telnet into it and use 
  424. <!--$v=1245987 (0418)-->that password for bill 
  425. <!--$v=1248827 (0419)-->to get into the thing. Otherwise, if they're sitting at the console 
  426. <!--$v=1252262 (0420)-->then they could use the enable password. 
  427. <!--$v=1255652 (0421)-->Let's take a look at this very similar 
  428. <!--$v=1258858 (0422)-->for the PIX. It's important 
  429. <!--$v=1261927 (0423)-->to keep in mind that the PIX does not support a local database. 
  430. <!--$v=1265500 (0424)-->It is all remote database here, so 
  431. <!--$v=1268431 (0425)-->if you turn on an authentication mechanism, 
  432. <!--$v=1271363 (0426)-->and you don't have to on the PIX, then you're going to need to set up 
  433. <!--$v=1274890 (0427)-->a remote - a centralized 
  434. <!--$v=1277730 (0428)-->authentication device out there, 
  435. <!--$v=1281165 (0429)-->a TACACS+ or a RADIUS server. 
  436. <!--$v=1284188 (0430)-->Let's take a look at this configuration 
  437. <!--$v=1286707 (0431)-->snip. I'm using the PIX version 4.0.7. 
  438. <!--$v=1289410 (0432)-->There's a couple of differences between 
  439. <!--$v=1292158 (0433)-->the 4.0.7 or the 4.0 version and 
  440. <!--$v=1294815 (0434)-->the 4.1. Not too many for what we're getting into 
  441. <!--$v=1298113 (0435)-->here, but be aware of them, and you've got a lot more 
  442. <!--$v=1301090 (0436)-->options and stuff in 4.1. 
  443. <!--$v=1304022 (0437)-->Let's take a look here. The enable password, 
  444. <!--$v=1307045 (0438)-->and I've got this - sorry, I've got this flipped here and 
  445. <!--$v=1310205 (0439)-->telnet password and enable password on the side 
  446. <!--$v=1312633 (0440)-->should be flipped of course. Enable password, 
  447. <!--$v=1315519 (0441)-->some crazy string there, and, again, 
  448. <!--$v=1319092 (0442)-->encrypted. This is pretty much the same mechanism. 
  449. <!--$v=1322664 (0443)-->This password, you enter it in cleartext 
  450. <!--$v=1326100 (0444)-->and it gets encrypted so that you can 
  451. <!--$v=1329169 (0445)-->- no one's going to be able to look over your shoulder. 
  452. <!--$v=1332650 (0446)-->Same thing with the - just the password. That 
  453. <!--$v=1335902 (0447)-->password is going to apply to the console port 
  454. <!--$v=1338421 (0448)-->and to the telnet sessions that are permitted into the 
  455. <!--$v=1341673 (0449)-->PIX. Looking down at that TACACS server, 
  456. <!--$v=1344513 (0450)-->again, we're just defining the location of the TACACS server 
  457. <!--$v=1347903 (0451)-->and optionally behind it use the key. 
  458. <!--$v=1350468 (0452)-->This, again, if you use the 
  459. <!--$v=1352850 (0453)-->optional key it will encrypt 
  460. <!--$v=1355232 (0454)-->the session to the TACACS server using that key. 
  461. <!--$v=1358530 (0455)-->Again, not a real strong encryption mechanism, but 
  462. <!--$v=1362057 (0456)-->it might be good for something out there. 
  463. <!--$v=1364897 (0457)-->Next couple of lines here, aaa authentication 
  464. <!--$v=1368378 (0458)-->telnet. What you're doing with this one 
  465. <!--$v=1371355 (0459)-->is anyone attempting to 
  466. <!--$v=1374332 (0460)-->set up a session through the PIX using telnet 
  467. <!--$v=1377905 (0461)-->will get an instream challenge. 
  468. <!--$v=1380608 (0462)-->It's saying that anyone going outbound 
  469. <!--$v=1383219 (0463)-->and the challenge is going to be done via 
  470. <!--$v=1386379 (0464)-->TACACS+. So you have to make sure your TACACS+ server 
  471. <!--$v=1389723 (0465)-->is out there and working before 
  472. <!--$v=1392654 (0466)-->anyone's going to be allowed to use telnet outbound. 
  473. <!--$v=1395219 (0467)-->Same thing with FTP and the same thing with 
  474. <!--$v=1398151 (0468)-->HTTP. Telnet and FTP, 
  475. <!--$v=1400853 (0469)-->these are console sessions, 
  476. <!--$v=1404289 (0470)-->so you're typing in things and getting responses back 
  477. <!--$v=1407037 (0471)-->on a console. HTTP, it's going to come 
  478. <!--$v=1410106 (0472)-->up with a browser screen and 
  479. <!--$v=1412580 (0473)-->prompt you for putting in your username and your password there. 
  480. <!--$v=1415923 (0474)-->All three of these can be 
  481. <!--$v=1418580 (0475)-->compressed down into one line. Rather than using the telnet, 
  482. <!--$v=1421649 (0476)-->FTP, and HTTP keywords, you can use the 
  483. <!--$v=1424809 (0477)-->"any" keyword. The downside of that is 
  484. <!--$v=1428107 (0478)-->before you could use any 
  485. <!--$v=1430856 (0479)-->protocol, let's say SMTP or POP-3 
  486. <!--$v=1433283 (0480)-->or anything else, you've got to be authenticated. 
  487. <!--$v=1436169 (0481)-->There is no instream 
  488. <!--$v=1439055 (0482)-->authentication for POP-3, SMTP or 
  489. <!--$v=1442215 (0483)-->any of the other protocols out there. 
  490. <!--$v=1444780 (0484)-->So your users would have to first go through, 
  491. <!--$v=1447804 (0485)-->establish a telnet session - 
  492. <!--$v=1450277 (0486)-->sort of going through the thing, they don't care if they get there or not - 
  493. <!--$v=1453621 (0487)-->but at least they'll get authenticated and the PIX will put 
  494. <!--$v=1456736 (0488)-->them in the user authentication table, 
  495. <!--$v=1460308 (0489)-->the UATH table there. Once that happens 
  496. <!--$v=1463148 (0490)-->then they will be able to use the SMTP or 
  497. <!--$v=1466217 (0491)-->POP-3 or whatever else they want to. 
  498. <!--$v=1469286 (0492)-->This seems to be quite a bit of a, oh, 
  499. <!--$v=1472630 (0493)-->negative influence on the people that are trying to get through 
  500. <!--$v=1475928 (0494)-->these things who are starting out with 
  501. <!--$v=1478676 (0495)-->non-telnet, FTP or HTTP sessions. 
  502. <!--$v=1481424 (0496)-->Many people just like to go ahead and use 
  503. <!--$v=1484173 (0497)-->specifically these three. 
  504. <!--$v=1486829 (0498)-->Okay, I've got no SNMP information 
  505. <!--$v=1489944 (0499)-->out there. That's just because telnet 
  506. <!--$v=1492647 (0500)-->10.1.1.2 255.255.255.255. 
  507. <!--$v=1495395 (0501)-->
  508. <!--$v=1497777 (0502)-->That's going to lock it down and say the only 
  509. <!--$v=1500388 (0503)-->device that can telnet into 
  510. <!--$v=1503869 (0504)-->the PIX is going to be that 10.1.1.2 
  511. <!--$v=1506892 (0505)-->device. No one else will be able to 
  512. <!--$v=1509411 (0506)-->telnet to the PIX. 
  513. <!--$v=1512389 (0507)-->Okay, let's talk about the Centri 
  514. <!--$v=1515183 (0508)-->authentication. Primarily 
  515. <!--$v=1517794 (0509)-->it uses Windows NT 
  516. <!--$v=1520634 (0510)-->domains to authenticate people 
  517. <!--$v=1523611 (0511)-->to be able to go through the Centri. 
  518. <!--$v=1526955 (0512)-->I don't want to say this is the only one. 
  519. <!--$v=1529474 (0513)-->This is the primary method. There's also a 
  520. <!--$v=1532818 (0514)-->centralized database on the Centri 
  521. <!--$v=1535337 (0515)-->so that if people coming from, let's say, a 
  522. <!--$v=1537948 (0516)-->UNIX machine or someone that's just not logged into 
  523. <!--$v=1540742 (0517)-->the NT domain, if they 
  524. <!--$v=1543215 (0518)-->want to establish a session going through the Centri 
  525. <!--$v=1546468 (0519)-->they'll be prompted, again, in those same three 
  526. <!--$v=1549445 (0520)-->instream mechanisms, telnet, 
  527. <!--$v=1552285 (0521)-->FTP, and HTTP, they'll be 
  528. <!--$v=1554941 (0522)-->challenged to provide their username and password. 
  529. <!--$v=1557461 (0523)-->Those can be locally set up in the Centri 
  530. <!--$v=1560255 (0524)-->and then if they meet that they'll be allowed to go through. 
  531. <!--$v=1563828 (0525)-->Otherwise, like I said, the primary mechanism 
  532. <!--$v=1566759 (0526)-->is to use the NT domain. 
  533. <!--$v=1569141 (0527)-->They'll be able to log into the domain and their credentials will be 
  534. <!--$v=1572347 (0528)-->passed from the primary or the backup domain controller 
  535. <!--$v=1575279 (0529)-->all the way through to the Centri if they try 
  536. <!--$v=1578256 (0530)-->and establish a session outbound through the Centri. 
  537. <!--$v=1581737 (0531)-->Okay, a couple 
  538. <!--$v=1584440 (0532)-->things. This is not designed - don't design with these in mind - but 
  539. <!--$v=1587829 (0533)-->it's a couple things to be aware of in the future. 
  540. <!--$v=1590486 (0534)-->IOS at some version in 11.3 
  541. <!--$v=1594059 (0535)-->will use better 
  542. <!--$v=1596807 (0536)-->mechanisms for the enable password. It'll be very 
  543. <!--$v=1600243 (0537)-->similar to what you can use for the login 
  544. <!--$v=1602899 (0538)-->passwords right now. This is - 
  545. <!--$v=1606243 (0539)-->what, take the - use 
  546. <!--$v=1608991 (0540)-->TACACS+, RADIUS, or Kerberos to 
  547. <!--$v=1611602 (0541)-->actually set up - or the one-time passwords for the enable 
  548. <!--$v=1615083 (0542)-->password. Also the PIX, they're changing 
  549. <!--$v=1617786 (0543)-->that so that it will start using additional 
  550. <!--$v=1620351 (0544)-->authentication mechanisms for the 
  551. <!--$v=1623053 (0545)-->console and the enable 
  552. <!--$v=1625756 (0546)-->passwords as well. 
  553. <!--$v=1628458 (0547)-->Let's talk about Kerberos for just a second. 
  554. <!--$v=1631115 (0548)-->There's a lot of people that are using this. 
  555. <!--$v=1633497 (0549)-->They're very satisfied with it. It takes a 
  556. <!--$v=1636932 (0550)-->lot to get this thing going. I attempted to do it on 
  557. <!--$v=1640139 (0551)-->a couple of SPARC workstations where the 
  558. <!--$v=1643437 (0552)-->- I got the KDC running on 
  559. <!--$v=1645819 (0553)-->those SPARC workstations. This worked out fairly well. 
  560. <!--$v=1649071 (0554)-->It was pretty easy to set this thing up. 
  561. <!--$v=1651865 (0555)-->It came back and told me everything was working properly, 
  562. <!--$v=1654751 (0556)-->things were going at the logs as I 
  563. <!--$v=1657224 (0557)-->expected them to be. I set up a 
  564. <!--$v=1659789 (0558)-->router to use Kerberos authentication first 
  565. <!--$v=1662904 (0559)-->and I finally got that thing working. 
  566. <!--$v=1665286 (0560)-->It was very, very heavily dependent upon 
  567. <!--$v=1668538 (0561)-->DNS and the correct time throughout the network. 
  568. <!--$v=1671744 (0562)-->First, DNS - 
  569. <!--$v=1674767 (0563)-->I had tried on the KDC to get some things 
  570. <!--$v=1677882 (0564)-->going a little bit fast, so I just used the host's table and 
  571. <!--$v=1680951 (0565)-->it said, "No, it's not going to do that." So I had to go 
  572. <!--$v=1683562 (0566)-->back on the router and align things properly with what the DNS was 
  573. <!--$v=1687089 (0567)-->saying was correct. The time - I found out that the 
  574. <!--$v=1690570 (0568)-->SPARC workstation's time 
  575. <!--$v=1693043 (0569)-->was set to Central and the 
  576. <!--$v=1695471 (0570)-->router's time was set to Pacific. 
  577. <!--$v=1698632 (0571)-->So I went through and changed the skew 
  578. <!--$v=1701472 (0572)-->on the clock on the KDC, made it something like 
  579. <!--$v=1704495 (0573)-->500,000 seconds, ten years' worth 
  580. <!--$v=1707289 (0574)-->of slew on the thing, and it started working okay after that. 
  581. <!--$v=1710724 (0575)-->Beyond that - that's an 
  582. <!--$v=1713610 (0576)-->authentication mechanism. Beyond that you can also use 
  583. <!--$v=1716908 (0577)-->it to encrypt your telnet sessions to the 
  584. <!--$v=1720435 (0578)-->router. This is not only telnet, but also the 
  585. <!--$v=1723046 (0579)-->R login, the R shell, and all the other 
  586. <!--$v=1725886 (0580)-->mechanisms that you can use to get to and control a router. 
  587. <!--$v=1729413 (0581)-->It's a very, very good, strong 
  588. <!--$v=1732024 (0582)-->encryption mechanism. Strong is a 
  589. <!--$v=1735551 (0583)-->relative term today, but it is 
  590. <!--$v=1738207 (0584)-->good and strong, uses 56-bit DES right now, 
  591. <!--$v=1741414 (0585)-->and the - 
  592. <!--$v=1744666 (0586)-->it will go through 
  593. <!--$v=1747093 (0587)-->this instream. That means that 
  594. <!--$v=1750117 (0588)-->it protects the authentication and protects 
  595. <!--$v=1753140 (0589)-->the session so you can be confident 
  596. <!--$v=1755521 (0590)-->of confidentiality, integrity, 
  597. <!--$v=1758453 (0591)-->and strong authentication through this. 
  598. <!--$v=1760881 (0592)-->Okay, one-time passwords - 
  599. <!--$v=1763492 (0593)-->this you can use to 
  600. <!--$v=1766331 (0594)-->set up a session to the router or to any 
  601. <!--$v=1769904 (0595)-->network device, and you'll be prompted. 
  602. <!--$v=1772607 (0596)-->I'm sure you've all seen the key 
  603. <!--$v=1775721 (0597)-->cards, the little token cards that have either a number 
  604. <!--$v=1778699 (0598)-->displayed across them all the time or something that 
  605. <!--$v=1781401 (0599)-->you punch in a number that you get as a challenge - 
  606. <!--$v=1784470 (0600)-->you punch in the number and it comes up with a 
  607. <!--$v=1786990 (0601)-->response. You can put these things in. We support 
  608. <!--$v=1789738 (0602)-->these in CiscoSecure. So it's a 
  609. <!--$v=1792303 (0603)-->additional mechanism. If someone's 
  610. <!--$v=1795097 (0604)-->tapping the wire they're not going to see 
  611. <!--$v=1797662 (0605)-->this password go across in cleartext. 
  612. <!--$v=1801189 (0606)-->Okay, restricting telnet access. 
  613. <!--$v=1804166 (0607)-->Let's talk about this for a few minutes here. We talked about that on the 
  614. <!--$v=1807648 (0608)-->PIX. Let's take a look on IOS and see how that does 
  615. <!--$v=1811129 (0609)-->also. Access-list 12 
  616. <!--$v=1814198 (0610)-->permit - what we're going through here is saying - 
  617. <!--$v=1816717 (0611)-->specifying exactly who can telnet 
  618. <!--$v=1819694 (0612)-->into the router. We're defining 
  619. <!--$v=1822488 (0613)-->that to be the 172.17.55 
  620. <!--$v=1825970 (0614)-->network. Hopefully this is where you've got all your 
  621. <!--$v=1829359 (0615)-->administrators set up so they can 
  622. <!--$v=1831924 (0616)-->telnet into the router. Now we go through and apply 
  623. <!--$v=1834856 (0617)-->that to the VTYs, all the VTY ports. 
  624. <!--$v=1837512 (0618)-->Access-class, special 
  625. <!--$v=1840215 (0619)-->command for who can telnet in. Access-class 12 
  626. <!--$v=1843330 (0620)-->in. We've also got another keyword 
  627. <!--$v=1846215 (0621)-->"out" so that once a person establishes a 
  628. <!--$v=1849651 (0622)-->session on the router, they will not be able to go 
  629. <!--$v=1852628 (0623)-->out with another telnet session 
  630. <!--$v=1855147 (0624)-->unless it meets a different access list. 
  631. <!--$v=1858262 (0625)-->So that's something that you can think about to further 
  632. <!--$v=1861652 (0626)-->confine the authorized administrators. 
  633. <!--$v=1864904 (0627)-->Let's talk about 
  634. <!--$v=1867560 (0628)-->SNMP access control. It's very similar to what we just 
  635. <!--$v=1870858 (0629)-->talked about with the telnet control into the router. 
  636. <!--$v=1873927 (0630)-->Access-list 13 - we're permitting 
  637. <!--$v=1877500 (0631)-->specifically this one device. Again, 
  638. <!--$v=1880340 (0632)-->we're permitting in that second line, permitting another 
  639. <!--$v=1883180 (0633)-->specific device, and with that 
  640. <!--$v=1886432 (0634)-->third line we're now saying 
  641. <!--$v=1889822 (0635)-->snmp-server community 
  642. <!--$v=1892753 (0636)-->public. Public is the 
  643. <!--$v=1895364 (0637)-->community string. That's the password for SNMP. 
  644. <!--$v=1898708 (0638)-->This is the default password 
  645. <!--$v=1901090 (0639)-->that is specified in the RFC. Beyond that, 
  646. <!--$v=1904067 (0640)-->RO is for read only. The 
  647. <!--$v=1906724 (0641)-->other option there is read/write. 
  648. <!--$v=1909243 (0642)-->It's a good thing to make this thing read only. 
  649. <!--$v=1911625 (0643)-->And then finally the final keyword out there 
  650. <!--$v=1914282 (0644)-->is 13, which matches back to your access list. 
  651. <!--$v=1917809 (0645)-->So only these two devices 
  652. <!--$v=1920878 (0646)-->that you've defined will be able to 
  653. <!--$v=1923763 (0647)-->send SNMP queries to 
  654. <!--$v=1927244 (0648)-->the router. The router will look at that and see, 
  655. <!--$v=1930588 (0649)-->"Yeah, this matches. It goes back to 
  656. <!--$v=1934069 (0650)-->or it matches the access list so I can send the responses 
  657. <!--$v=1937092 (0651)-->back to them." If it doesn't, the sessions will be 
  658. <!--$v=1940482 (0652)-->ignored and dropped. Using 
  659. <!--$v=1943826 (0653)-->"public" as your community string 
  660. <!--$v=1946391 (0654)-->is not a very good thing to do. I've seen a lot of 
  661. <!--$v=1949414 (0655)-->articles in <i>Frac Magazine 
  662. <!--$v=1951796 (0656)--></i>specify or telling people go ahead and try 
  663. <!--$v=1955094 (0657)-->public. Again, try Cisco, Pancho, 
  664. <!--$v=1957751 (0658)-->several of the other well-known 
  665. <!--$v=1960361 (0659)-->passwords, community strings to try 
  666. <!--$v=1963339 (0660)-->and take access - or try to take control 
  667. <!--$v=1965950 (0661)-->of the router there. Version 1 of 
  668. <!--$v=1969522 (0662)-->SNMP does send these passwords in cleartext. 
  669. <!--$v=1972546 (0663)-->It also sends the responses back in cleartext. 
  670. <!--$v=1975843 (0664)-->This is a known problem with 
  671. <!--$v=1978546 (0665)-->SNMP Version 1. Version 2 addresses 
  672. <!--$v=1981890 (0666)-->these things. It also puts in a policy reference 
  673. <!--$v=1985371 (0667)-->saying, "This device can do read/write. 
  674. <!--$v=1988944 (0668)-->That device can only do read only. 
  675. <!--$v=1991417 (0669)-->This device can only do read only and is 
  676. <!--$v=1994028 (0670)-->limited to these certain things." Unfortunately 
  677. <!--$v=1997234 (0671)-->SNMP Version 2 has not been 
  678. <!--$v=2000578 (0672)-->widely accepted. People are pretty much waiting for version 3 
  679. <!--$v=2004151 (0673)-->and then they're going to throw all their efforts at that when it comes 
  680. <!--$v=2007632 (0674)-->about. I guess we can say that the SNMP 
  681. <!--$v=2011022 (0675)-->effort has been going on for a long time. 
  682. <!--$v=2013404 (0676)-->A lot of people have a lot of great 
  683. <!--$v=2016243 (0677)-->ideas to go into that thing, and they're trying to pull it all together now. 
  684. <!--$v=2019816 (0678)-->The identification 
  685. <!--$v=2023068 (0679)-->protocol - several times a year we get some questions about this. 
  686. <!--$v=2028977 (0680)-->On paper at first glance it looks really neat. 
  687. <!--$v=2032321 (0681)-->Let me say some negative things about this at the end. 
  688. <!--$v=2035115 (0682)-->Let's go through it here real quick. You might see this on 
  689. <!--$v=2038138 (0683)-->UNIX machines as the ident D 
  690. <!--$v=2041345 (0684)-->process. First, a device 
  691. <!--$v=2043726 (0685)-->is going to telnet into the router, and if you turn this 
  692. <!--$v=2047024 (0686)-->on - proofing this thing I found out, I realized I did not 
  693. <!--$v=2050231 (0687)-->include the command in here, which 
  694. <!--$v=2052796 (0688)-->is just as well. I'd recommend not using this. 
  695. <!--$v=2055453 (0689)-->First, a device is going to try and telnet 
  696. <!--$v=2057972 (0690)-->into the router. The router 
  697. <!--$v=2061316 (0691)-->is going to put that thing on hold, come back, and 
  698. <!--$v=2064614 (0692)-->establish a ident process or 
  699. <!--$v=2068003 (0693)-->ident session back to that host 
  700. <!--$v=2070431 (0694)-->because it knows the source of the session 
  701. <!--$v=2073820 (0695)-->and the source and destination port numbers. 
  702. <!--$v=2076523 (0696)-->So it's going to send back a query to that thing saying, 
  703. <!--$v=2079454 (0697)-->"Who is this?" If everything's working correctly 
  704. <!--$v=2083027 (0698)-->that device is going to send back, "Well, that's 
  705. <!--$v=2086371 (0699)-->Chris. So hey, it's okay." 
  706. <!--$v=2088753 (0700)-->If everything gets satisfied correctly 
  707. <!--$v=2091180 (0701)-->the router will take that telnet process that it had on hold 
  708. <!--$v=2094707 (0702)-->and then allow 
  709. <!--$v=2097593 (0703)-->it to proceed. It's the syn - after everything 
  710. <!--$v=2101074 (0704)-->happens it'll send back the syn/ack and things will go from there. 
  711. <!--$v=2104556 (0705)-->Within the RFC, and this is RFC 
  712. <!--$v=2107670 (0706)-->1413, I've included the 
  713. <!--$v=2110052 (0707)-->security concerns as a 
  714. <!--$v=2112526 (0708)-->- in the speaker notes 
  715. <!--$v=2114999 (0709)-->of this presentation. You might want to go through that 
  716. <!--$v=2117381 (0710)-->or you might want to get a copy of RFC 1413. 
  717. <!--$v=2120450 (0711)-->It starts out by saying, "The information 
  718. <!--$v=2123656 (0712)-->returned by this protocol is at most as trustworthy 
  719. <!--$v=2127183 (0713)-->as the host providing it." It 
  720. <!--$v=2129611 (0714)-->pretty much goes downhill from there, saying you - 
  721. <!--$v=2132313 (0715)-->it can be spoofed fairly easily. 
  722. <!--$v=2135062 (0716)-->So this is something you can use. 
  723. <!--$v=2138085 (0717)-->I don't know, I've never seen anyone actually using this 
  724. <!--$v=2141108 (0718)-->in a real network before. 
  725. <!--$v=2143994 (0719)-->Okay, let's talk about some resource deprivation attacks. 
  726. <!--$v=2147566 (0720)-->Within the 
  727. <!--$v=2150681 (0721)-->IP protocol there are four different 
  728. <!--$v=2153704 (0722)-->applications, if you will, that have been defined. 
  729. <!--$v=2156773 (0723)-->The first one is the Echo protocol, 
  730. <!--$v=2159338 (0724)-->and these things apply to both TCP and UDP. 
  731. <!--$v=2162865 (0725)-->So the first one, Echo - 
  732. <!--$v=2165247 (0726)-->if you establish a TCP 
  733. <!--$v=2168133 (0727)-->session to a router or some other network 
  734. <!--$v=2171064 (0728)-->device on port number 7, 
  735. <!--$v=2174042 (0729)-->every key that you type in 
  736. <!--$v=2176927 (0730)-->will be echoed back to you. 
  737. <!--$v=2179676 (0731)-->This is a great thing, okay. The 
  738. <!--$v=2182332 (0732)-->Discard protocol - if you establish a TCP or 
  739. <!--$v=2185356 (0733)-->UDP session over to a router, 
  740. <!--$v=2188424 (0734)-->every key you type in will be discarded 
  741. <!--$v=2191402 (0735)-->by the router. I usually bundle up all 
  742. <!--$v=2194837 (0736)-->my excess e-mail and start up that session number 9 and just 
  743. <!--$v=2198410 (0737)-->sort of dump it down there. Number 13 
  744. <!--$v=2201479 (0738)-->is the Daytime. If you set up a TCP or 
  745. <!--$v=2204502 (0739)-->UDP session to a router 
  746. <!--$v=2207571 (0740)-->on port number 13, the router's going 
  747. <!--$v=2210273 (0741)-->to respond back with what it thinks 
  748. <!--$v=2212930 (0742)-->the date and time are. Okay. 
  749. <!--$v=2215358 (0743)-->None of these things are pretty 
  750. <!--$v=2218060 (0744)-->dangerous by themselves unless something like 
  751. <!--$v=2221404 (0745)-->you and 50,000 of your closest friends 
  752. <!--$v=2223923 (0746)-->all establish these sessions to the router at the same time. 
  753. <!--$v=2227084 (0747)-->The router will pretty much just sit there 
  754. <!--$v=2230107 (0748)-->and think about how to handle all of these sessions 
  755. <!--$v=2233405 (0749)-->coming to it. The 
  756. <!--$v=2236153 (0750)-->- one of the nastier ones here is this fourth 
  757. <!--$v=2239131 (0751)-->one, character generation, or Chargen. 
  758. <!--$v=2241741 (0752)-->If you establish a 
  759. <!--$v=2244673 (0753)-->TCP session on port number 19 
  760. <!--$v=2247879 (0754)-->to a router, the router will 
  761. <!--$v=2250765 (0755)-->take all those e-mail messages that I shoved to it on the Discard 
  762. <!--$v=2254338 (0756)-->port and will continually send you back 
  763. <!--$v=2257773 (0757)-->one character at a time. 
  764. <!--$v=2260247 (0758)-->This is actually an ordered progression of characters. 
  765. <!--$v=2263178 (0759)-->If you start it up, 
  766. <!--$v=2265560 (0760)-->the only way to stop it is by 
  767. <!--$v=2268354 (0761)-->killing the TCP session there. If you 
  768. <!--$v=2271377 (0762)-->allow it to go, the router's going to spend a lot of 
  769. <!--$v=2274309 (0763)-->cycles continually sending you back one packet, 
  770. <!--$v=2277286 (0764)-->one character at a time. Okay. 
  771. <!--$v=2280218 (0765)-->The really nasty thing about 
  772. <!--$v=2282600 (0766)-->this is that in a UDP datagram 
  773. <!--$v=2285623 (0767)-->there's no response, there is no 
  774. <!--$v=2288234 (0768)-->implied session about the thing. 
  775. <!--$v=2290844 (0769)-->Attackers have been able to craft packets. Let's say they 
  776. <!--$v=2293959 (0770)-->come from this router over here and they're going to this router over here 
  777. <!--$v=2297257 (0771)-->and they say "UDP Chargen." So this router now 
  778. <!--$v=2300830 (0772)-->continually sends back 
  779. <!--$v=2303258 (0773)-->packets to the other router, which is just going, 
  780. <!--$v=2305868 (0774)-->"Hey, where did this stuff come from?" It's pretty easy to 
  781. <!--$v=2309350 (0775)-->turn these things off. Why would we 
  782. <!--$v=2311960 (0776)-->have these things turned on to begin with? It's required in 
  783. <!--$v=2315258 (0777)-->RFC 1812. To be a real 
  784. <!--$v=2318098 (0778)-->Internet-compliant router you've got to support certain 
  785. <!--$v=2321213 (0779)-->things. Go through, turn these things off. No 
  786. <!--$v=2324603 (0780)-->service udp-small-servers and no 
  787. <!--$v=2327305 (0781)-->service tcp-small-servers as well. 
  788. <!--$v=2330832 (0782)-->This will make the router not listen 
  789. <!--$v=2334222 (0783)-->on these ports. It won't deal with this stuff anymore. 
  790. <!--$v=2337336 (0784)-->Another one is the finger 
  791. <!--$v=2339810 (0785)-->service, TCP and UDP 79, 
  792. <!--$v=2342238 (0786)-->although it is pretty much just used on 
  793. <!--$v=2344894 (0787)-->TCP 79. Turn this one off with the no 
  794. <!--$v=2348146 (0788)-->service finger as well. Attackers can use 
  795. <!--$v=2351170 (0789)-->this to find out who is logged in to 
  796. <!--$v=2354330 (0790)-->a network device at any given time. 
  797. <!--$v=2356987 (0791)-->If they can get the information about 
  798. <!--$v=2359964 (0792)-->usernames, they'll be able to try those things 
  799. <!--$v=2363400 (0793)-->first. It is usually good to do 
  800. <!--$v=2366010 (0794)-->no service finger on the routers. 
  801. <!--$v=2369263 (0795)-->ARP control - 
  802. <!--$v=2371736 (0796)-->this is something - it's for the control 
  803. <!--$v=2375217 (0797)-->freaks out there. If you have a 
  804. <!--$v=2378240 (0798)-->very small network and you don't 
  805. <!--$v=2380989 (0799)-->want anything to happen without you knowing about 
  806. <!--$v=2383554 (0800)-->it, you can go through and statically define the IP 
  807. <!--$v=2386806 (0801)-->address with the Mac address. In this example here 
  808. <!--$v=2390241 (0802)-->the router is going to know always that that 
  809. <!--$v=2393081 (0803)-->device, 172.1.1.99, 
  810. <!--$v=2396471 (0804)-->is at that Mac address. It won't have 
  811. <!--$v=2399127 (0805)-->to ARP for it. It won't have to go searching for it. 
  812. <!--$v=2401738 (0806)-->Someone else can, yes, 
  813. <!--$v=2404349 (0807)-->turn on their machine with the same IP 
  814. <!--$v=2407601 (0808)-->address, ostensibly a different Mac address, 
  815. <!--$v=2410029 (0809)-->and there will be conflicts between these two 
  816. <!--$v=2413373 (0810)-->devices. The router won't see that conflict because he's not 
  817. <!--$v=2416625 (0811)-->looking for it. It's not doing anything, but it will know for sure 
  818. <!--$v=2420152 (0812)-->that that one device is the only one and true 
  819. <!--$v=2423267 (0813)-->172.1.1.99. 
  820. <!--$v=2426107 (0814)-->We've gotten some 
  821. <!--$v=2428992 (0815)-->requests periodically also, "I want 
  822. <!--$v=2431695 (0816)-->these people to be able to do this, 
  823. <!--$v=2434260 (0817)-->but the real administrators to be able to do this." This is quite often 
  824. <!--$v=2437833 (0818)-->operations people. You want them to come in, 
  825. <!--$v=2440306 (0819)-->clear the interfaces or do something 
  826. <!--$v=2443192 (0820)-->else. Yes, we've got 16 levels of administration 
  827. <!--$v=2446765 (0821)-->on the router. Let's take a look at 
  828. <!--$v=2449925 (0822)-->this configuration snip here. Privilege 
  829. <!--$v=2453406 (0823)-->level -or privilege exec level 9 show. 
  830. <!--$v=2456796 (0824)-->What we're doing here is we're defining 
  831. <!--$v=2459407 (0825)-->the level 9 administrators 
  832. <!--$v=2461880 (0826)-->and we're applying the command "show" to 
  833. <!--$v=2464949 (0827)-->that level. That means it will not be available to 
  834. <!--$v=2468156 (0828)-->anyone below level 9. It'll be available 
  835. <!--$v=2471087 (0829)-->to level 9 and above administrators. 
  836. <!--$v=2474202 (0830)-->This means if you normally just log in 
  837. <!--$v=2476675 (0831)-->at the level 0, the user level, 
  838. <!--$v=2479698 (0832)-->you will not be able to enter the command "show." 
  839. <!--$v=2482401 (0833)-->Right after that, 
  840. <!--$v=2484966 (0834)-->enable secret level 9, then the password, 
  841. <!--$v=2488493 (0835)-->and finally the enable secret 5. 
  842. <!--$v=2491150 (0836)-->This is the level 15 password, the 
  843. <!--$v=2494356 (0837)-->default-authorized 
  844. <!--$v=2496829 (0838)-->administrator into the IOS. Looking at a 
  845. <!--$v=2500311 (0839)-->session to that router, starts out 
  846. <!--$v=2503288 (0840)-->with you're in enable mode, show priv. 
  847. <!--$v=2506219 (0841)-->Comes back and says your current level is 15. 
  848. <!--$v=2508785 (0842)-->You are the top-level administrator 
  849. <!--$v=2511212 (0843)-->on the router at that time. If you disable and 
  850. <!--$v=2514739 (0844)-->come back in enable 9, now it's going to 
  851. <!--$v=2517900 (0845)-->ask you for the level 9 password and you can enter 
  852. <!--$v=2520969 (0846)-->that and you'll be at level 9. 
  853. <!--$v=2523351 (0847)-->You can do show priv because 
  854. <!--$v=2526190 (0848)-->that show command has been applied to 
  855. <!--$v=2529259 (0849)-->you. It will tell you that the 
  856. <!--$v=2532053 (0850)-->current privilege level is 9, and, 
  857. <!--$v=2534664 (0851)-->again, this is very effective for operations people 
  858. <!--$v=2537229 (0852)-->that you want to be able to clear interfaces or 
  859. <!--$v=2539840 (0853)-->clear counters or something like that, but not get into 
  860. <!--$v=2543321 (0854)-->the configuration. 
  861. <!--$v=2546528 (0855)-->Audit Trail - let's take a look at the 
  862. <!--$v=2549001 (0856)-->IOS syslog audit trail 
  863. <!--$v=2551887 (0857)-->here. Let's start in that middle box, the actual 
  864. <!--$v=2554681 (0858)-->configuration snippet there. Version 11.2, 
  865. <!--$v=2558117 (0859)-->service timestamps log datetime 
  866. <!--$v=2561598 (0860)-->localtime show-timezones. And you've got options out there, you might as well throw 
  867. <!--$v=2565079 (0861)-->them into the thing. The last line there, logging 10.1.1.2. 
  868. <!--$v=2568652 (0862)-->This defines where the syslog server is 
  869. <!--$v=2571721 (0863)-->that the router will bundle up these messages to 
  870. <!--$v=2574423 (0864)-->and send them to it. Moving up to that top box 
  871. <!--$v=2577996 (0865)-->on the UNIX machine, this comes up 
  872. <!--$v=2581523 (0866)-->and it says, let's go ahead and take 
  873. <!--$v=2584088 (0867)-->a look at the log file there and I've called it 
  874. <!--$v=2587523 (0868)-->cisco.log. Comes up, says February 17 - 
  875. <!--$v=2590180 (0869)-->this is looking at the syslog file on the UNIX 
  876. <!--$v=2593707 (0870)-->machine. February 17 21:48 - 
  877. <!--$v=2596501 (0871)-->sure enough, that was the date that I did this. Gives the address that 
  878. <!--$v=2599433 (0872)-->the message came from, 
  879. <!--$v=2602318 (0873)-->has a star or an asterisk out there, March 2, 
  880. <!--$v=2605662 (0874)-->11:51 and that's kind of 
  881. <!--$v=2608960 (0875)-->strange, and then after that it comes up with the actual 
  882. <!--$v=2612304 (0876)-->message saying that it was configured. Checking the date on 
  883. <!--$v=2615739 (0877)-->my UNIX machine, sure enough, couple of seconds later 
  884. <!--$v=2618533 (0878)-->it gives me the correct time. 
  885. <!--$v=2620915 (0879)-->Going back and logging into the router, that lower 
  886. <!--$v=2624213 (0880)-->blue box there - if you do a sho clock on that 
  887. <!--$v=2627282 (0881)-->the router comes back and says, "Hey, look. 
  888. <!--$v=2629710 (0882)-->I absolutely know that it's 
  889. <!--$v=2632275 (0883)-->11:53 a.m. Central Standard Time, March 
  890. <!--$v=2635848 (0884)-->2, 1993, by the way." 
  891. <!--$v=2638275 (0885)-->This is a little bit off, of 
  892. <!--$v=2641115 (0886)-->course. The two times are not synchronized and 
  893. <!--$v=2644551 (0887)-->that's what that asterisk means right there, or actually 
  894. <!--$v=2647848 (0888)-->in both places. The asterisk means 
  895. <!--$v=2651101 (0889)-->that it does not have an authenticated time 
  896. <!--$v=2653757 (0890)-->source, so it's just using its local 
  897. <!--$v=2656506 (0891)-->clock on the router. Of course 
  898. <!--$v=2659162 (0892)-->you want to synchronize these things. You want to run 
  899. <!--$v=2662735 (0893)-->NTP across your network so that you're not left sitting 
  900. <!--$v=2665987 (0894)-->there after the barn burns down trying to figure out 
  901. <!--$v=2669148 (0895)-->well, you know, what happened first? Did the lantern fall 
  902. <!--$v=2672308 (0896)-->over before the horses ran out or after the horses ran out? 
  903. <!--$v=2675560 (0897)-->Synchronize your clocks across your entire network 
  904. <!--$v=2679087 (0898)-->and you won't have to be thinking about, "Well, if I move 
  905. <!--$v=2682614 (0899)-->this up and move that down, then the clock skews 
  906. <!--$v=2685180 (0900)-->on these things are here and there." Don't do that. Synchronize 
  907. <!--$v=2688752 (0901)-->the clocks and get your logging messages 
  908. <!--$v=2691501 (0902)-->going. Again, pretty much similar thing 
  909. <!--$v=2694707 (0903)-->on the PIX syslog looking down at the lower 
  910. <!--$v=2698234 (0904)-->box, the configuration there. Down at the very bottom of that 
  911. <!--$v=2701578 (0905)-->syslog output 20.6. 
  912. <!--$v=2703960 (0906)-->This is facility and 
  913. <!--$v=2706433 (0907)-->level. We're starting at level 6 here, we're defining 
  914. <!--$v=2709548 (0908)-->level 6. That's everything 
  915. <!--$v=2712708 (0909)-->except the debugging messages. This is quite often 
  916. <!--$v=2715686 (0910)-->way too much information for 
  917. <!--$v=2718113 (0911)-->everybody. Usually it's at level 3, which is informational, 
  918. <!--$v=2721503 (0912)-->and above up to level 0, which is - 
  919. <!--$v=2724297 (0913)-->I believe it's system unavailable. 
  920. <!--$v=2727183 (0914)-->The facility there, if you 
  921. <!--$v=2729931 (0915)-->add 16 or if you take away 16 from that number 
  922. <!--$v=2732817 (0916)-->it'll tell you the actual facility. 
  923. <!--$v=2735702 (0917)-->Like, it'll start out at facility 0 for 
  924. <!--$v=2739000 (0918)-->a - using a 16.3 in there. 
  925. <!--$v=2742573 (0919)-->Quite often the UNIX machines require that to come in 
  926. <!--$v=2746146 (0920)-->at a specific level. So you need to think about that and match 
  927. <!--$v=2749719 (0921)-->that up when going to a specific 
  928. <!--$v=2752101 (0922)-->syslog server out there. 
  929. <!--$v=2754712 (0923)-->Taking a look at the top of that thing, tail the 
  930. <!--$v=2757414 (0924)-->PIX log. It says pretty much the same thing. 
  931. <!--$v=2759796 (0925)-->One difference you'll note here is that the PIX 
  932. <!--$v=2762727 (0926)-->is not keeping wall clock or day clock. It 
  933. <!--$v=2765751 (0927)-->will just put in the clock - or the syslog mechanism 
  934. <!--$v=2769323 (0928)-->will actually put in the clock right there. 
  935. <!--$v=2771888 (0929)-->So what do we do with 
  936. <!--$v=2774774 (0930)-->all of these syslog messages? 
  937. <!--$v=2777660 (0931)-->Just like everyone else, once a month you go through and 
  938. <!--$v=2780820 (0932)-->delete the things because they're taking up a heck of a lot of log 
  939. <!--$v=2783523 (0933)-->space or disk space on your machines. 
  940. <!--$v=2786271 (0934)-->No, that's the wrong answer. 
  941. <!--$v=2788653 (0935)-->Get some automated tools to parse these 
  942. <!--$v=2791630 (0936)-->things for you. Syslog messages, 
  943. <!--$v=2794516 (0937)-->yes. They can take up a ton of log 
  944. <!--$v=2796990 (0938)-->space and it's very tedious to try and go through these. 
  945. <!--$v=2799967 (0939)-->There have been some real good efforts on 
  946. <!--$v=2802669 (0940)-->some free products out there that will go through 
  947. <!--$v=2805051 (0941)-->and munge through this to make a report for you, or 
  948. <!--$v=2808258 (0942)-->we've got as an example here Cisco Resource Manager, 
  949. <!--$v=2811693 (0943)-->which can show you 
  950. <!--$v=2814258 (0944)-->in HTTP format - it can run on 
  951. <!--$v=2816823 (0945)-->a UNIX machine and come up with HTTP 
  952. <!--$v=2819892 (0946)-->session, which will go through and 
  953. <!--$v=2822411 (0947)-->review the logs for you. It'll come up with 
  954. <!--$v=2825480 (0948)-->summaries. It'll come up with reports and, 
  955. <!--$v=2827908 (0949)-->in fact, summaries of the reports. This is 
  956. <!--$v=2830565 (0950)-->pretty much like going to the admiral after you come back 
  957. <!--$v=2833130 (0951)-->from your mission out on the ship 
  958. <!--$v=2836107 (0952)-->and say, "Hey, you know, day one 
  959. <!--$v=2838947 (0953)-->I did these things," and the admiral's going to go, "No, no, no. Just give me the summary 
  960. <!--$v=2842428 (0954)-->of this." "Fine, here you go. For all the 30 days I did 
  961. <!--$v=2845772 (0955)-->this." Comes up with some very nice reports on the 
  962. <!--$v=2848520 (0956)-->things. By all means go through and 
  963. <!--$v=2850994 (0957)-->review those reports. You've got an automated tool 
  964. <!--$v=2854292 (0958)-->to munge the stuff down. At least pay attention to that. 
  965. <!--$v=2857819 (0959)-->Okay, let's move outwards a little bit 
  966. <!--$v=2861208 (0960)-->now. We've gone through how to 
  967. <!--$v=2863865 (0961)-->protect the routers, the PIX, and the other devices out there. 
  968. <!--$v=2867254 (0962)-->Let's take a look at how we can apply that and some other 
  969. <!--$v=2870552 (0963)-->things to actually protecting 
  970. <!--$v=2873209 (0964)-->some additional resources in your network. 
  971. <!--$v=2875866 (0965)-->Let's start out with some of the more common threats here. 
  972. <!--$v=2878980 (0966)-->First one is spoofing. This has gotten 
  973. <!--$v=2881362 (0967)-->a lot of press lately. What 
  974. <!--$v=2884843 (0968)-->happens in spoofing is we've got this device 
  975. <!--$v=2887546 (0969)-->out there, 172.16.42.84, 
  976. <!--$v=2890890 (0970)-->obviously the evil device out there. Who is 
  977. <!--$v=2894234 (0971)-->crafting a packet and sending it 
  978. <!--$v=2896661 (0972)-->in through your boundary 
  979. <!--$v=2899318 (0973)-->router, through your first line of defense there 
  980. <!--$v=2901700 (0974)-->towards that machine 10.1.1.2? 
  981. <!--$v=2904173 (0975)-->And the crafting part of it is it's saying 
  982. <!--$v=2907105 (0976)-->the source is 10.1.1.1. The router 
  983. <!--$v=2910265 (0977)-->would normally only look at the 
  984. <!--$v=2912876 (0978)-->destination of that packet. It's going to see 
  985. <!--$v=2916403 (0979)-->yes, it is defined to go to 
  986. <!--$v=2919197 (0980)-->10.1 network, so it will forward it all the way in there. 
  987. <!--$v=2922633 (0981)-->This is not a good thing if you're not expecting 
  988. <!--$v=2925839 (0982)-->this. A way around this is to put in an access 
  989. <!--$v=2929412 (0983)-->list. We've got it down there at the bottom of the configuration 
  990. <!--$v=2931885 (0984)-->snip, says access-list 111 deny 
  991. <!--$v=2935458 (0985)-->ip 127. Should there ever be any 
  992. <!--$v=2938160 (0986)-->packets coming from the 127 network? No, of course not. 
  993. <!--$v=2941642 (0987)-->The second line of that deny 
  994. <!--$v=2944344 (0988)-->ip, and then you put in the address 
  995. <!--$v=2946726 (0989)-->for your protected network or networks 
  996. <!--$v=2949932 (0990)-->there. Of course you're going to need - 
  997. <!--$v=2952360 (0991)-->after everything else you're going to need an access-list 
  998. <!--$v=2955750 (0992)-->111 permit any any just to fill that thing out. 
  999. <!--$v=2959322 (0993)-->Then you're going to go back up and apply that as an inbound 
  1000. <!--$v=2962895 (0994)-->access list 
  1001. <!--$v=2965598 (0995)-->on the external interface, and that's going to be the serial interface 
  1002. <!--$v=2968987 (0996)-->there. It's going to look at packets such as the one that's been 
  1003. <!--$v=2972468 (0997)-->crafted, look at it and say, "No. This one 
  1004. <!--$v=2975492 (0998)-->does not - should not be coming in." 
  1005. <!--$v=2978057 (0999)-->So the packet's - or the router's going to drop that. 
  1006. <!--$v=2980530 (1000)-->There's also another line here, the no 
  1007. <!--$v=2983233 (1001)-->ip directed-broadcasts. This has gotten some 
  1008. <!--$v=2986760 (1002)-->press pretty recently. Packets can come 
  1009. <!--$v=2989462 (1003)-->in from the outside which tell a network 
  1010. <!--$v=2992943 (1004)-->device to split this up and 
  1011. <!--$v=2995463 (1005)-->send it to broadcast address on a 
  1012. <!--$v=2998440 (1006)-->destination network. Again, you probably 
  1013. <!--$v=3001600 (1007)-->don't want this all the time. Certain situations you do, 
  1014. <!--$v=3004807 (1008)-->especially if you have some multicast or 
  1015. <!--$v=3007601 (1009)-->multimedia applications going on, but as a 
  1016. <!--$v=3010487 (1010)-->resource protection if you know that's not 
  1017. <!--$v=3012914 (1011)-->going to happen on some internal network, turn it off. 
  1018. <!--$v=3016441 (1012)-->ICMP 
  1019. <!--$v=3018869 (1013)-->types of attacks - 
  1020. <!--$v=3022075 (1014)-->these have gotten some press recently, 
  1021. <!--$v=3024778 (1015)-->various things. We can get around 
  1022. <!--$v=3027434 (1016)-->this, again, with another access list. The example here 
  1023. <!--$v=3031007 (1017)-->is access-list 101 permit icmp 
  1024. <!--$v=3034534 (1018)-->any any, whatever you want to put in there, 
  1025. <!--$v=3037603 (1019)-->the type and the code. 
  1026. <!--$v=3040122 (1020)-->What I've got from RFC 792 right here are all the 
  1027. <!--$v=3043191 (1021)-->various types. The ICMP 
  1028. <!--$v=3045619 (1022)-->ping starts out with type number 
  1029. <!--$v=3048780 (1023)-->8 and then the 
  1030. <!--$v=3051299 (1024)-->response is type number 0, the echo reply. 
  1031. <!--$v=3054734 (1025)-->You can go through and 
  1032. <!--$v=3057162 (1026)-->figure out which of these you want to 
  1033. <!--$v=3059956 (1027)-->allow into your network and which ones - 
  1034. <!--$v=3062384 (1028)-->which responses you want to allow out. I've seen some people 
  1035. <!--$v=3065956 (1029)-->say, "Cut them all off. ICMP is just evil, 
  1036. <!--$v=3069254 (1030)-->especially at the perimeter. Cut it 
  1037. <!--$v=3071865 (1031)-->all off." A lot of things will 
  1038. <!--$v=3074476 (1032)-->not work in that instance. The pings will not 
  1039. <!--$v=3077179 (1033)-->work, the trace route will not work. Various other things 
  1040. <!--$v=3080614 (1034)-->won't either. It's your decision whether you want to turn this on or 
  1041. <!--$v=3084049 (1035)-->off. Mostly what I've seen are people going through 
  1042. <!--$v=3087210 (1036)-->there figuring out exactly which ones they want to have 
  1043. <!--$v=3090783 (1037)-->turned on, and specifically only turning those on. 
  1044. <!--$v=3093989 (1038)-->A couple of extra things right here. 
  1045. <!--$v=3096508 (1039)-->The - let's see, 
  1046. <!--$v=3100081 (1040)-->if you look at type number 3, destination unreachable 
  1047. <!--$v=3103654 (1041)-->messages, those are sent out from a 
  1048. <!--$v=3106173 (1042)-->router. When a packet comes in, the router knows 
  1049. <!--$v=3109242 (1043)-->that that destination, either a network or a specific 
  1050. <!--$v=3111807 (1044)-->host is unavailable, the router will send 
  1051. <!--$v=3115059 (1045)-->back, "No, can't send that packet. I can't 
  1052. <!--$v=3117670 (1046)-->complete this session for you, and here's why." It'll give you 
  1053. <!--$v=3121243 (1047)-->the type or the code with that. 
  1054. <!--$v=3123625 (1048)-->If you put this 
  1055. <!--$v=3126007 (1049)-->configuration command onto an interface, IOS 
  1056. <!--$v=3129396 (1050)-->is not going to send the IP unreachables out 
  1057. <!--$v=3132740 (1051)-->there. This is a piece of information that an attacker could 
  1058. <!--$v=3136267 (1052)-->use to exploit a known problem 
  1059. <!--$v=3139428 (1053)-->or a known hole in your 
  1060. <!--$v=3142726 (1054)-->network with - by knowing that 
  1061. <!--$v=3145840 (1055)-->some network is down or some specific host is 
  1062. <!--$v=3149001 (1056)-->down. So put that thing on and you can feel a little bit more comfortable with 
  1063. <!--$v=3152482 (1057)-->that. The other one there, no ip redirects - 
  1064. <!--$v=3155643 (1058)-->ip redirects are good in 
  1065. <!--$v=3158437 (1059)-->certain instances. For perimeter 
  1066. <!--$v=3161048 (1060)-->protection? No, they should probably be turned off as well. 
  1067. <!--$v=3163567 (1061)-->You apply that to an interface and now the 
  1068. <!--$v=3167048 (1062)-->IOS will not accept an ICMP 
  1069. <!--$v=3170300 (1063)-->redirect from external sources. 
  1070. <!--$v=3173827 (1064)-->Source routing - you've probably 
  1071. <!--$v=3176255 (1065)-->heard of this one in popular press as well recently. 
  1072. <!--$v=3178682 (1066)-->This is where 
  1073. <!--$v=3181248 (1067)-->a external device sends a packet 
  1074. <!--$v=3184820 (1068)-->in claiming to be some IP 
  1075. <!--$v=3187431 (1069)-->address that's not in the normal routing 
  1076. <!--$v=3190317 (1070)-->tables. There's good reasons for this. It was defined in 
  1077. <!--$v=3193478 (1071)-->RFC 792, the Internet protocol, 
  1078. <!--$v=3196409 (1072)-->to allow 
  1079. <!--$v=3199112 (1073)-->some host out there who's 
  1080. <!--$v=3201493 (1074)-->been moved - this is the first thoughts of IP 
  1081. <!--$v=3204471 (1075)-->mobility - some host that's out there 
  1082. <!--$v=3206853 (1076)-->can put together a packet saying, 
  1083. <!--$v=3209326 (1077)-->"I really am part of this 
  1084. <!--$v=3211754 (1078)-->network and here is the path to get back to 
  1085. <!--$v=3215143 (1079)-->me," and it'll loop around. In this situation here 
  1086. <!--$v=3218121 (1080)-->the private network is being protected by some router. 
  1087. <!--$v=3221373 (1081)-->Somewhere else we have the real network 
  1088. <!--$v=3224167 (1082)-->10.16. If you're not 
  1089. <!--$v=3227007 (1083)-->expecting source routing or source-routed 
  1090. <!--$v=3229434 (1084)-->packets to come into that network, apply the IP 
  1091. <!--$v=3232641 (1085)-->source - no IP source routing command 
  1092. <!--$v=3235664 (1086)-->to the external interface and that'll 
  1093. <!--$v=3238550 (1087)-->look at the IP options there, 
  1094. <!--$v=3241390 (1088)-->identify the source routing of that, and immediately 
  1095. <!--$v=3244871 (1089)-->kill those type of packets. 
  1096. <!--$v=3247894 (1090)-->In this configuration you see we are actually 
  1097. <!--$v=3251283 (1091)-->allowing 10.16 packets in, but 
  1098. <!--$v=3254398 (1092)-->not if they are source 
  1099. <!--$v=3256398 (1093)-->routed. 
  1100. </BODY>
  1101. </HTML>
  1102.